package com.fmboy.MXH.nav.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.fmboy.MXH.nav.domain.dto.PasswordResetDTO;
import com.fmboy.MXH.nav.domain.dto.UserDTO;
import com.fmboy.MXH.nav.domain.entities.User;
import com.fmboy.MXH.nav.domain.pojo.UserVO;

import java.util.List;

public interface UserService extends IService<User> {
    UserVO login(UserDTO userDTO);

    void PasswordReset(PasswordResetDTO passwordResetDTO);

    void updateByIdName(User user, String verificationCode);

    void updateEmail(User user, String verificationCode);

    void updatePassword(UserDTO user);

    void updateAvatar(String fileUrl);

    List<UserVO> getAllUser(String username, String email);

    UserVO getUserInfo(Integer id);

    void addUser(UserDTO userVO);

    void AdminUpdateUserInfo(UserDTO userVO);

    void AdminUpdateUserPassword(UserDTO userVO);

    void AdminUpdateUserRole(UserDTO userDTO);

    void AdminUserById(Integer id);
}
